package com.lujuncheng.tankgame;

import java.util.Vector;

/**
 * @author LuJuncheng
 * @version 1.0
 * 敌人坦克
 */
public class EnemyTank extends Tank implements Runnable {

    public EnemyTank(int x, int y) {
        super(x, y);
    }

    /**
     * 敌方坦克自动移动
     */
    public void moveSteeps() {
        int direct = getDirect();
        for (int i = 0; i < 30; i++) {//移动30步
            if (!isTouchOhterTank()) {//判断是否重叠，不重叠则坦克移动下一步
                move();
                sleep50s();
            }
        }
    }

    /**
     * 敌方坦克线程 自动移动 自动发射子弹
     */
    @Override
    public void run() {
        while (true) {
            if (shots.size() < 5) {//最多同时存在3颗子弹
                shotBullet();
            }
            //根据坦克当前的方向来继续移动
            moveSteeps();
            //然后随机的改变方向
            setDirect((int) (Math.random() * 4));
            //考虑什么时候退出
            if (!isLive) {
                break;//退出线程
            }
        }

    }

}
